package com.tanhua.interceptor;

import com.tanhua.domain.User;

/**
 * 在这个类中创建Threadlocal，并提供方法，将user的信息存进来
 */
public class UserHolder {

    private static ThreadLocal<User> tl = new ThreadLocal<>();
    /**
     * 将数据保存到threadLocal中
     */
    public static void set(User user){
        tl.set(user);
    }
    /**
     * 从ThreadLocal中取出数据
     */
    public static User get(){
        return tl.get();
    }
    /**
     * 从threadLocal中取出id
     */
    public static Long getUserId(){
        if (tl.get()!=null){
            return tl.get().getId();
        }
        return null;
    }
    /**
     * 从threadLocal中取出mobile
     */
    public static String getUserMobile(){
        if (tl.get()!=null){
            return tl.get().getMobile();
        }
        return null;
    }
    /**
     * 从threadLocal中移除数据
     */
    public static void remove(){
        tl.remove();
    }
}
